<template>
  <el-radio-group v-bind="$attrs" v-on="$listeners">
    <el-radio v-for="(item,i) in labels" :key="i" :label="item.value">{{item.label}}</el-radio>
  </el-radio-group>
</template>

<script>
  export default {
    name: "my-radio",
    props: {
      /** 如果使用字典查询,传入字典名 **/
      dict: {
        type: String
      },
      /** 如果使url查询,传入字典名 **/
      url: {
        type: String
      },
      /** 如果不使用字典查询,可以在此参数直接传入option数组 **/
      options: {
        type: Array,
        default: ()=>{
          return []
        }
      }
    },
    data(){
      return{
        labels: []
      }
    },
    created() {
      /**判断字典名称 或者 url是否为空  为空使用options作为数据源， 不为空按字典名称或者url查询数据作为数据源 **/
      if(this.dict != null){
        this.$ajax.getDict(this.dict).then(res=>{
          this.labels = res;
        });
      }else if(this.url != null){
        this.$ajax.requestCommonGet(this.url).then(res=>{
          this.labels = res;
        });
      }else{
        this.labels = this.options;
      }
    }
  }
</script>

<style scoped>

</style>
